Szczegółowa konfiguracja Tesseract
Jeśli chodzi o OCR, niezbędne jest posiadanie opcji i elastyczności w zakresie podejścia do dokumentów oraz sposobu wyodrębniania z nich tekstu. Ponieważ wykonywanie OCR jest kosztowne, konieczna jest możliwość kontrolowania wydajności i metod stosowanych w przypadku konkretnych dokumentów, aby zapewnić skalowalność i wydajność aplikacji wykorzystującej OCR.
IronTesseract oferuje programistom różne właściwości i opcje, którymi mogą eksperymentować. Na przykład, jeśli chcemy umieścić na czarnej liście określone znaki lub również chcemy odczytać kody kreskowe w dokumentach, a nawet określić, jak silnik OCR odczytuje stronę, aby skanować pod kątem potencjalnych bloków tekstu, można to wszystko i więcej dzięki klasie IronTesseract.
5-etapowy przewodnik po korzystaniu z IronOCR z Tesseract 5
var ocrTesseract = new IronTesseract();ocrTesseract.Language = OcrLanguage.EnglishBest;ocrTesseract.Configuration.ReadBarCodes = false;ocrTesseract.Configuration.BlackListCharacters = "`ë|^";ocrTesseract.Configuration.TesseractVariables["tessedit_parallelize"] = false;
Po zainicjowaniu klasy IronTesseract, dostępnych jest kilka ważnych opcji, które chcielibyśmy zmodyfikować. Pierwszą właściwością do skonfigurowania jest Language. Domyślnym językiem jest angielski; jednak IronTesseract wspiera do 125 języków i pozwala nawet na użycie wielu języków metodą UseMultipleLanguages. Więcej szczegółów znajdziesz tutaj.
Drugą właściwością, którą chcemy skonfigurować, jest klasa TesseractConfiguration. Z tą klasą możemy modyfikować sposób, w jaki silnik Tesseract skanuje dokument w poszukiwaniu potencjalnych bloków tekstu.
- Po pierwsze, modyfikujemy język silnika Tesseract, przypisując język do
OcrLanguage.EnglishBest. Ta wariacja łączy LSTM i OEM, które są strategiami rozpoznawania kształtów wykorzystującymi OCR; łączenie tych dwóch strategii pozwala OCR na uzyskanie dokładniejszych wyników. - Następnie ustawiamy
ReadBarCodesna false, aby uniknąć odczytywania kodów kreskowych podczas procesu OCR.
Dodatkowo dostosowujemy i precyzujemy znaki, które chcemy wydobyć, umieszczając na czarnej liście pewne znaki w dokumencie; w tym przykładzie umieszczamy na czarnej liście znaki, aby uniknąć wydobycia tekstu zawierającego backticky, akcenty lub daszki. W końcu ustawiamy TesseractVariables["tessedit_parallelize"] na false, aby tymczasowo wyłączyć przetwarzanie równoległe. Ostatnia z tych funkcji jest naprawdę potężna, ponieważ bezpośrednio odnosi się do silnika Tesseract. Tutaj znajduje się pełna lista TesseractVariables, która pozwala programistom na dalsze dostosowywanie zachowania silnika Tesseract podczas wykonywania OCR.

